package com.bjpowernode.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.bjpowernode.entity.PmsFile;
import com.bjpowernode.mapper.PmsFileMapper;
import com.bjpowernode.service.PmsFileService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;

/**
 * <p>
 * 文件表 服务实现类
 * </p>
 *
 * @author zs
 * @since 2024-06-01
 */
//取得上传文件的三个参数，来判断上传的文件是不是统一个文件。目的是达到疾速上传
//这里目的是当我们添加管理原头像时，如果上传的文件和原来的文件一样，则不更新头像，直接返回原有保存的头像地址

@Service
public class PmsFileServiceImpl extends ServiceImpl<PmsFileMapper, PmsFile> implements PmsFileService {

    //因为现在是先进行判断是否上传的是相同文件，再进行文件上传，所以要修改之前的上床文件的业务代码
    @Override
    public PmsFile get(String md5, Long size, String type) {
        //创建查询条件对象
        QueryWrapper<PmsFile> wrapper = new QueryWrapper<>();
        //设置查询条件，用于查询指定字段的值（查询数据库中是否有和传递过来的变量相同的值的字段内容）
        wrapper.eq("md5", md5).eq("type", type).eq("size", size);
        //据库中查询符合特定MD5、类型和大小的文件记录。如果符合条件的记录存在，this.getOne(wrapper)将返回第一个符合条件的记录；否则返回null。
        return this.getOne(wrapper);//取得一个文件（如果上面的查询语句匹配到对应文件字段则返回一个文件，否则返回null）
    }
}
